﻿*::-moz-focus-inner {
    border: 0;
}
    
* {
    font-family: inherit;
    color: inherit;
}
    
body, div, p, h1, h2, h3, h4, h5, h6, hr, dl, dt, dd, a, ol, ul, li {
    margin: 0;
    padding: 0;
    border: 0;
}
    
body {
    font-family: Arial;
    font-size: 14px;
    line-height: 1.5;
    color: #444;
        
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    /*padding: 0 1em;*/
}
    
p {
    margin: 1.5em 0;
}

p.first {
    margin-top: 0;
}
    
h1, h2, h3, h4, h5 {
    font-weight: normal;
}

h1 {
    font-size: 2.2em;
    margin: 0.55em 0;
}
    
h2 {
    font-size: 2em;
    margin: 0.5em 0;
}

h3 {
    font-size: 1.8em;
    margin: 0.95em 0;
}

h4 {
    font-size: 1.6em;
    margin: 1.1em 0;
}
    
h5 {
    font-size: 1.4em;
    margin: 1.4em 0;
}
    
h6 {
    font-size: 1.2em;
    margin: 1.8em 0;
    font-weight: bold;
}

sup, sub {
    vertical-align: inherit;
    position: relative;
    font-size: 0.7em;
}
    
sup {
    top: -0.4em;
}
    
sub {
    top: 0.4em;
}
    
pre, code {
    font-family: inherit;
    font-size: inherit;
    margin: 1em 0;
    box-sizing: border-box;
    max-width: 100%;
    overflow: auto;
    white-space: pre;
    display: block;
}
    
code, tt, kbd {
    font-family: Consolas, "Courier New", Courier, monospace;
    background: #eee;
    padding: 0.2em 0.4em;
}
    
code.source {
    background: none;
    border: 1px dashed #ccc;
}
    
mark {
    background: #fe9;
    padding: 0.2em 0.4em;
}
    
s, del {
    text-decoration: line-through;
}
    
u, ins, a {
    text-decoration: underline;
}
    
i, em, cite, blockquote {
    font-style: italic;
    font-size: inherit;
}
    
blockquote {
    display: block;
    margin: 1.5em 0 1.5em 2em;
    border-left: 0.4em solid #eee;
    padding-left: 1em;
}
    
em {
    color: #ff8080;
}
    
small {
    color: #999;
    font-size: 0.85em;
}
    
kbd {
    background: #fafafa;
    border: 1px solid #ccc;
    border-color: #eee #ddd #ddd #eee;
    border-radius: 3px;
}
    
hr {
    border-top: 1px solid #ddd;
    margin: 1em 0;
}
    
*:lang(de) q { quotes: "\201E" "\201C"; }
*:lang(en) q { quotes: "\201C" "\201D"; }
*:lang(fr) q, html:lang(ru) q { quotes: "\00AB" "\00BB"; }

q:lang(de) { quotes: "\201E" "\201C" !important; }
q:lang(en) { quotes: "\201C" "\201D" !important; }
q:lang(fr), q:lang(ru) { quotes: "\00AB" "\00BB" !important; }

dl { margin: 0; }
dt { font-weight: bold; }
dd { margin: 1.5em 0 1.5em 2em; }
    
a {
    color: #588FE5;
}
    
a:hover, a:visited {
    color: #05c;
}
    
/*
a {
    color: #2daebf;
}
    
a:hover, a:visited {
    color: #007d9a;
}
*/
    
a.external {
    background: url() center right no-repeat;
	padding-right: 16px;
}

a.email {
    background: url() center right no-repeat;
	padding-right: 17px;
}

a.pdf {
    background: url() center right no-repeat;
	padding-right: 18px;
}

a.zip {
    background: url() center right no-repeat;
	padding-right: 18px;
}

a.doc {
    background: url() center right no-repeat;
	padding-right: 18px;
}

a.xls {
    background: url() center right no-repeat;
	padding-right: 18px;
}

a > img {
    border: 0;
}   
    
/*
    Lists (default)
*/
    
ul, ol {
    margin-left: 4em;
}

/*
    .no-indent
*/
    
ul.no-indent, ol.no-indent {
	margin-left: auto;
}

/*
    .no-bullets
*/
    
ul.no-bullets > li, ol.no-bullets > li {
	list-style: none;
}
    
/*
    .rarefied
*/
    
ul.rarefied > li, ol.rarefied > li {
    margin: 1em 0;
}
    
/*
    .nav-vertical
*/

ul.nav-vertical {
	padding: 0;
    margin: 0.75em 1em 0.75em 0;
}

ul.nav-vertical > li {
	border-left: 0.4em solid transparent;
	list-style: none;
    padding: 0.75em 1em 0.75em 2em;
	cursor: pointer;
}

ul.nav-vertical > li:hover {
	background: #eee;
}

ul.nav-vertical > li.current {
	border-left: 0.4em solid #ff8080;
	cursor: text;
}

ul.nav-vertical > li.current:hover {
	background: none;
}

ul.nav-vertical > li > a {
	color: #666;
	text-decoration: none;
	display: block;
}

ul.nav-vertical > li.current > a {
	color: #ff8080;
	font-weight: bold;
	cursor: text;
}
    
/*
    .nav-horizontal
*/    
    
ul.nav-horizontal {
	padding: 0;
    margin: 0.75em 1em 0.75em 0;
}
    
ul.nav-horizontal:after {
    display: block;
    content: ' ';
    height: 0;
    clear: both;
    overflow: hidden;
    visibility: hidden;
}

ul.nav-horizontal > li {
	border-bottom: 0.4em solid transparent;
	list-style: none;
    padding: 0.75em 1em 0.35em 1em;
	cursor: pointer;
    float: left;
}
    
ul.nav-horizontal > li:hover {
	background: #eee;
}

ul.nav-horizontal > li.current {
	border-bottom: 0.4em solid #ff8080;
	cursor: text;
}

ul.nav-horizontal > li.current:hover {
	background: none;
}

ul.nav-horizontal > li > a {
	color: #666;
	text-decoration: none;
	display: block;
}

ul.nav-horizontal > li.current > a {
	color: #ff8080;
	font-weight: bold;
	cursor: text;
}

/*
    .bread-crumbs
*/
    
ul.bread-crumbs {
    list-style-type: none;
    margin: 1.5em 0;
    outline: 1px solid #eee;
}
    
ul.bread-crumbs:after {
    display: block;
    content: ' ';
    height: 0;
    clear: both;
    overflow: hidden;
    visibility: hidden;
}
    
ul.bread-crumbs > li {
	float: left;
	padding: 0.75em 2em 0.75em 1em;
    background: url() no-repeat right center;
}
    
ul.bread-crumbs > li:last-child {
    background: none;
}
    
/*
    Utilities
*/    

.hidden { display: none; }
.invisible { visibility: hidden; }

.wide { width: 100%; }
.half { width: 50%; }
.qr { width: 25%; }
    
.margin { margin: 1em; }
.margin-left { margin-left: 1em; }
.margin-right { margin-right: 1em; }
.margin-top { margin-top: 1em; }
.margin-bottom { margin-bottom: 1em; }
.margin-top-bottom { margin-top: 1em; margin-bottom: 1em; }
.margin-left-right { margin-left: 1em; margin-right: 1em; }

.left { float: left; }
.right { float: right; }
    
.text-left { text-align: left; }
.text-right { text-align: right; }
.text-center { text-align: center; }
.text-justify { text-align: justify; }

.unselectable, .button {
    -webkit-user-select: none;
     -khtml-user-select: none;
       -moz-user-select: -moz-none;
        -ms-user-select: none;
         -o-user-select: none;
    user-select: none;
}
    
.unresizable {
    resize: none;
}
    
.row > li, .row > .col {
    float: left;
    list-style: none;
    box-sizing: border-box;
}
    
.row:after {
    display: block;
    content: ' ';
    height: 0;
    clear: both;
    overflow: hidden;
    visibility: hidden;
}

.vtop > tbody > tr > * {
    vertical-align: top;
}

/*
    Buttons
*/
    
.button {
    font-size: 0.85em; 
    font-weight: bold;
    padding: 0 0.8em;
    box-sizing: border-box;
    min-height: 2.4em;
    line-height: 2.4em;
    -position: relative;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
}   
    
.button, .button:visited {
    border: 1px solid #ccc;
    background-color: #eee;
    color: #666;
}
    
.button:focus {
    outline: 1px solid #ea0;
}
    
.button:active {
    outline: 1px solid #ea0;
    top: 0.1em;
    left: 0.1em;
}
    
.button:hover {
    border-color: #999;
    color: #666;
}

.button.green, .button.green:visited { color: #fff; border: 0; background-color: #91bd09; }
.button.green:hover { color: #fff; border: 0; background-color: #749a02; }
.button.cyan, .button.cyan:visited { color: #fff; border: 0; background-color: #2daebf; }
.button.cyan:hover { color: #fff; border: 0; background-color: #007d9a; }
    
    
.button.blue, .button.blue:visited { color: #fff; border: 0; background-color: #588FE5; }
.button.blue:hover { color: #fff; border: 0; background-color: #05c; }
    
.button.red, .button.red:visited { color: #fff; border: 0; background-color: #e33100; }
.button.red:hover { color: #fff; border: 0; background-color: #872300; }
.button.magenta, .button.magenta:visited { color: #fff; border: 0; background-color: #a9014b; }
.button.magenta:hover { color: #fff; border: 0; background-color: #630030; }
.button.orange, .button.orange:visited { color: #fff; border: 0; background-color: #ff5c00; }
.button.orange:hover { color: #fff; border: 0; background-color: #d45500; }
.button.yellow, .button.yellow:visited { color: #fff; border: 0; background-color: #ffb515; }
.button.yellow:hover { color: #fff; border: 0; background-color: #fc9200; }
.button.black, .button.black:visited { color: #fff; border: 0; background-color: #333; }
.button.black:hover { color: #fff; border: 0; background-color: #000; }
.button.white, .button.white:visited { border: 0; background-color: #f5f5f5; }
.button.white:hover { border: 0; background-color: #fff; }

.button[disabled], .button[disabled]:focus, .button[disabled]:active, .button[disabled]:hover {
    border-color: #ccc;
    color: #ccc;
    outline: 0;
    top: 0;
    left: 0;
}

.button.green[disabled]:hover { background-color: #91bd09; }
.button.cyan[disabled]:hover { background-color: #2daebf; }
.button.blue[disabled]:hover { background-color: #588FE5; }
.button.red[disabled]:hover { background-color: #e33100; }
.button.magenta[disabled]:hover { background-color: #a9014b; }
.button.orange[disabled]:hover { background-color: #ff5c00; }
.button.yellow[disabled]:hover { background-color: #ffb515; }
.button.black[disabled]:hover { background-color: #333; }
.button.white[disabled]:hover { background-color: #f5f5f5; }

/*
    Input fields
*/
    
.field {
    box-sizing: border-box;
    min-height: 2.4em;
    line-height: 2.4em;
    width: 20em;
    font-size: 0.85em;
    padding: 0 0.4em;
    color: #666;
    border: 1px solid #ccc;
    outline: 1px solid transparent;
}
    
.field.error {
    outline-color: #eaa;
}
    
.field:hover {
    border-color: #999;
}

.field:focus {
    outline-color: #ea0;
    border-color: #999;
    background-color: #fff;
}
    
/*
    Textarea
*/    
    
.textarea {
    font-size: 0.85em;
    width: 40em;
    border: 1px solid #ccc;
    outline: 1px solid transparent;
    box-sizing: border-box;
    color: #666;
    line-height: 2;
    padding: 0 0.4em;
    height: 4.2em;
}
        
.textarea.error {
    outline-color: #eaa;
}
    
.textarea:hover {
    border-color: #999;
}

.textarea:focus {
    outline-color: #ea0;
    border-color: #999;
    background-color: #fff;
}
    
/*
    Fieldset
*/

fieldset {
    border: 1px solid #ccc;
    box-sizing: border-box;
    padding: 0.4em;
}
    
fieldset > legend {
    padding: 0 0.4em;
}
    
/*
    Select
*/    

label.select > select {
    color: #666;
    outline: 1px solid transparent;
    cursor: pointer;
    padding: 0;
    margin: 0;
    outline: 0;
    border: 0;
    z-index: 0;
        margin-left: 0.4em;
        margin-right: 0.8em;        
}
    
label.select {
    display: inline-block;
        height: 2em;
        line-height: 2em;
    padding: 0;
    margin: 0;
    outline: 0;
    border: 0;
    border: 1px solid #ccc;
}
    
label.select:after {
    content: 'в–ј';
    background: #eee;
    color: #666;
    width: 2em;
    font-weight: bold;
        height: 2em;
        line-height: 2em;
    padding: 0;
    margin: 0;
    border: 0;
    outline: 0;
    text-align: center;
    position: relative;
    display: inline-block;
    margin-left: -2em;
    z-index: 100;
    pointer-events:none;
}
    
label.select:hover {
    border-color: #999;
}

select.select {
	box-sizing: border-box;
	font-size: 0.85em;
	padding: 0.4em;
	/*min-height: 2.4em;
	line-height: 2.4em;*/
    border: 1px solid #ccc;
    outline: 1px solid transparent;
}

select.select.error {
    outline-color: #eaa;
}
    
select.select:hover {
    border-color: #999;
}

select.select:focus {
    outline-color: #ea0;
    border-color: #999;
    background-color: #fff;
}

/*
    Pulse animations
*/    
    
@-webkit-keyframes green-pulse {
    from { background-color: #749a02; -webkit-box-shadow: 0 0 0.2em rgba(145,189,9,0); }
    50% { background-color: #91bd09; -webkit-box-shadow: 0 0 1.2em rgba(145,189,9,0.9); }
    to { background-color: #749a02; -webkit-box-shadow: 0 0 0.2em rgba(145,189,9,0); }
}
    
@-webkit-keyframes cyan-pulse {
    from { background-color: #007d9a; -webkit-box-shadow: 0 0 0.2em rgba(45,174,191,0); }
    50% { background-color: #2daebf; -webkit-box-shadow: 0 0 1.2em rgba(45,174,191,0.9); }
    to { background-color: #007d9a; -webkit-box-shadow: 0 0 0.2em rgba(45,174,191,0); }
}

@-webkit-keyframes blue-pulse {
    from { background-color: #05c; -webkit-box-shadow: 0 0 0.2em rgba(88,143,229,0); }
    50% { background-color: #588FE5; -webkit-box-shadow: 0 0 1.2em rgba(88,143,229,0.9); }
    to { background-color: #05c; -webkit-box-shadow: 0 0 0.2em rgba(88,143,229,0); }
}

@-webkit-keyframes red-pulse {
    from { background-color: #bc330d; -webkit-box-shadow: 0 0 0.2em rgba(227,49,0,0); }
    50% { background-color: #e33100; -webkit-box-shadow: 0 0 1.2em rgba(227,49,0,0.9); }
    to { background-color: #bc330d; -webkit-box-shadow: 0 0 0.2em rgba(227,49,0,0); }
}

@-webkit-keyframes magenta-pulse {
    from { background-color: #630030; -webkit-box-shadow: 0 0 0.2em rgba(169,1,75,0); }
    50% { background-color: #a9014b; -webkit-box-shadow: 0 0 1.2em rgba(169,1,75,0.9); }
    to { background-color: #630030; -webkit-box-shadow: 0 0 0.2em rgba(169,1,75,0); }
}

@-webkit-keyframes orange-pulse {
    from { background-color: #d45500; -webkit-box-shadow: 0 0 0.2em rgba(255,92,0,0); }
    50% { background-color: #ff5c00; -webkit-box-shadow: 0 0 1.2em rgba(255,92,0,0.9); }
    to { background-color: #d45500; -webkit-box-shadow: 0 0 0.2em rgba(255,92,0,0); }
}

@-webkit-keyframes yellow-pulse {
    from { background-color: #fc9200; -webkit-box-shadow: 0 0 0.2em rgba(255,181,21,0); }
    50% { background-color: #ffb515; -webkit-box-shadow: 0 0 1.2em rgba(255,181,21,0.9); }
    to { background-color: #fc9200; -webkit-box-shadow: 0 0 0.2em rgba(255,181,21,0); }
}

@-webkit-keyframes black-pulse {
    from { background-color: #000; -webkit-box-shadow: 0 0 0.2em rgba(51,51,51,0); }
    50% { background-color: #333; -webkit-box-shadow: 0 0 1.2em rgba(51,51,51,0.6); }
    to { background-color: #000; -webkit-box-shadow: 0 0 0.2em rgba(51,51,51,0); }
}

@-webkit-keyframes white-pulse {
    from { background-color: #f5f5f5; -webkit-box-shadow: 0 0 0.2em rgba(255,255,255,0); }
    50% { background-color: #fff; -webkit-box-shadow: 0 0 1.2em rgba(255,255,255,0.6); }
    to { background-color: #f5f5f5; -webkit-box-shadow: 0 0 0.2em rgba(255,255,255,0); }
}

.green.pulse { -webkit-animation-name: green-pulse; -webkit-animation-duration: 3s; -webkit-animation-iteration-count: infinite; }
.cyan.pulse { -webkit-animation-name: cyan-pulse; -webkit-animation-duration: 2s; -webkit-animation-iteration-count: infinite; }
.blue.pulse { -webkit-animation-name: blue-pulse; -webkit-animation-duration: 4s; -webkit-animation-iteration-count: infinite; }
.red.pulse { -webkit-animation-name: red-pulse; -webkit-animation-duration: 1s; -webkit-animation-iteration-count: infinite; }
.magenta.pulse { -webkit-animation-name: magenta-pulse; -webkit-animation-duration: 2s; -webkit-animation-iteration-count: infinite; }
.orange.pulse { -webkit-animation-name: orange-pulse; -webkit-animation-duration: 3s; -webkit-animation-iteration-count: infinite; }
.yellow.pulse { -webkit-animation-name: yellow-pulse; -webkit-animation-duration: 5s; -webkit-animation-iteration-count: infinite; }
.black.pulse { -webkit-animation-name: black-pulse; -webkit-animation-duration: 2s; -webkit-animation-iteration-count: infinite; }
.white.pulse { -webkit-animation-name: white-pulse; -webkit-animation-duration: 2s; -webkit-animation-iteration-count: infinite; }    
  
/*
    table.simple
*/
    
.simple {
    border-spacing: 0;
    border-collapse: collapse;
}

.simple > tbody > tr > th, .simple > tbody > tr > td {
    border: 1px solid #ccc;
    padding: 0.4em 0.8em;
    text-align: left;
}
    
/*
    table.soft
*/
    
.soft {
    border-spacing: 0;
    border-collapse: collapse;
}

.soft > tbody > tr > th, .soft > tbody > tr > td {
    border-bottom: 1px solid #ccc;
    padding: 0.4em 0.8em;
    text-align: left;
}
    
.soft > tbody > tr > th {
    background: #eee;
}    
    
/*
    table.glamour
*/
    
.glamour {
    border-spacing: 0;
    border-collapse: collapse;
}

.glamour > tbody > tr > th, .glamour > tbody > tr > td {
    border-bottom: 1px solid #eee;
    padding: 0.4em 0.8em;
    text-align: left;
}
    
.glamour > tbody > tr > th {
    color: #ff8080;
}    

/*
    table.layout
*/    
    
.layout {
    border-spacing: 0;
    border-collapse: collapse;
}

/*
    table.form
*/    
    
.form {
    border-spacing: 0;
    border-collapse: collapse;
}

.form > tbody > tr > th, .form > tbody > tr > td {
    padding: 0.2em 0.4em;
}

.form > tbody > tr > th {
    font-weight: normal;
    text-align: right;
}
    
.form > tbody > tr > .message {
    color: #999;
    font-style: italic;
    padding-top: 0;
    padding-bottom: 1em;
}
    
.form > tbody > tr > .message.error {
    color: #FF8080;
}
    
/*
    div.form
*/
    
.form > label {
    display: block;
}    
    
.form > .message {
    color: #999;
    font-style: italic;
    margin-top: 0;
    margin-bottom: 1em;
}

.form > .message.error {
    color: #FF8080;
}
    
/*
    TODO split table.form and div.form
*/    
    
.form .required:after {
    content: ' *';
    color: #FF8080;
    font-style: bold;
}    

.form .example {
    color: #999;
    font-style: italic;
}    
